Exploiting Architectural Style for Self-repairing Systems
نویسندگان
چکیده
An increasingly important requirement for software systems is the capability to adapt at run time in order to accommodate varying resources, system errors, and changing requirements. For such self-repairing systems, one of the hard problems is determining when a change is needed, and knowing what kind of adaptation is required. In this paper we describe a partial solution in which stylized architectural design models are maintained at run time as a vehicle for automatically monitoring system behavior, for detecting when that behavior falls outside of acceptable ranges, and for deciding on a high-level repair strategy. The main innovative feature of the approach is the coupling of architectural models with architectural styles that both exposes specific properties of interest and provides an analytic basis for detecting anomalies and suggesting verifiably sound repair strategies. We illustrate the approach for performance-oriented adaptation of web-based client-server applications, whose soundness can be determined through queuing theoretic analysis of the corresponding architectures.
منابع مشابه
Repairing software style using graph grammars
Often, software architects impose a particular style on the software systems they design. For large software systems, they would like to ensure that the design continues to conform to this style during the maintenance phase of the software-life cycle. We will assume that the architectural design of a software system is available; for instance, it may have been extracted from the source code of ...
متن کاملUsing Architectural Style as a Basis for System Self-repair
An increasingly important requirement for software systems is the capability to adapt at run time in order to accommodate varying resources, system errors, and changing requirements. For such self-repairing systems, one of the hard problems is determining when a change is needed, and knowing what kind of adaptation is required. Recently several researchers have explored the possibility of using...
متن کاملArchitectural Style: An Object-Oriented Approach
Software system builders are increasingly recognizing the importance of exploiting design knowledge in the engineering of new systems. One way to do this is to deene an architectural style for a collection of related systems. The style determines a coherent vocabulary of system design elements and rules for their composition. By structuring the design space for a family of related systems a sty...
متن کاملIncreasing System Dependability through Architecture-Based Self-Repair
One increasingly important technique for improving system dependability is to provide mechanisms for a system to adapt at run time in order to accommodate varying resources, system errors, and changing requirements. For such "self-repairing" systems one of the hard problems is determining when a change is needed, and knowing what kind of adaptation is required. In this paper we describe a parti...
متن کاملA Pattern-Based Architectural Style for Self-Organizing Software Systems
We present an architectural style for selforganizing software systems, which leverages a catalog of design patterns for self-organization. The catalog, which represent our prior work, defines a number of bio-inspired selforganization mechanism as design patterns, and shows how more abstract and complex forms of self-organization can be composed from simpler, lower-level mechanisms. We now discu...
متن کامل